﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace FinanSoft
{
    class MessageConstants
    {
        public const String NO_EXCHANGE_RATE_ESTABLISHED = "No establecido";
        public const String NO_SELECTED_CURRENCY = "Debe seleccionar una moneda para ser editada o eliminada.";
        public const String NO_SELECTED_ACCOUNT = "Debe seleccionar una cuenta para ser editada o eliminada.";
        public const String NO_SELECTED_COMPANY = "Debe seleccionar una compañía para ser cargada.";
        public const String MISSING_FIELDS = "Debe llenar todos los campos.";
        public const String ABR_MUST_BE_3 = "La abreviación de la moneda debe tener 3 caracteres.";
        public const String ACCOUNT_CODE_MUST_BE_15 = "El código de la cuenta no puede sobrepasar los 15 caracteres.";
        public const String GREATER_INITIAL_DATE = "La fecha de inicio es mayor a la fecha final.";
        public const String NEEDED_DECIMAL_NUMBER = "Tiene que ingresar un número decimal.";
        public const String TITLE = "FinanSoft";
        public const String NO_CELL_SELECTED = "Debe seleccionar una celda para eliminar la fila a la que pertenece.";
        public const String MISSING_TRANSACTIONS = "El asiento no tiene transacciones asociadas, no puede ser registrado";
        public const String NO_ROWS = "No existen transacciones, no hay filas que borrar";


        public const String ACCOUNTING_ENTRY_INSERTED = "Asiento registrado exitosamente.";
        public const String CURRENCY_INSERTED = "Moneda creada exitósamente.";
        public const String ACCOUNT_INSERTED = "Cuenta creada exitósamente.";
        public const String CURRENCY_UPDATED = "Moneda editada exitósamente.";
        public const String ACCOUNT_UPDATED = "Cuenta editada exitósamente.";
        public const String CURRENCY_DELETED = "Moneda eliminada exitósamente.";
        public const String ACCOUNT_DELETED = "Cuenta eliminada exitósamente.";
        public const String EXCHANGE_RATE_ESTABLISHED = "Tipo de cambio establecido exitósamente.";
        public const String COMPANY_CREATED = "Compañía creada exitósamente";

        public const String BALANCE_SHEET_TITLE = "Balance general";
        public const String TRIAL_BALANCE_TITLE = "Balance de comprobación";
        public const String INCOME_STATEMENT_TITLE = "Estado de resultados";

        // Periodos y Temporadas
        public const String CONSULT_PERIOD = "Debe seleccionar el periodo a consultar";
        public const String DATE_PERIOD = "La Fecha de Inicio debe ser antes de la Fecha Final del Periodo";
        public const String DATE_SEASON = "La Fecha de Inicio debe ser antes de la Fecha Final de la Temporada";
        public const String DATE_SEASON_DUE = "La Fecha de Inicio de Vencimiento debe ser antes de la Fecha Final de Vencimiento";
        public const String NO_SELECTED_SEASON = "Debe seleccionar una Temporada para ser editada";
        public const String NO_ALLOWED_STATUS = "El cambio de estado realizado no se permite"; 
        public const String DATE_PERIOD_SEASON_INI = "La Fecha de inicio de temporada debe ser despues o el mismo dia que empieza el periodo";
        public const String EXIST_PERIOD = "Ese periodo ya existe, debes cambiar el nombre";
        public const String EXIST_SEASON = "Esa temporada ya existe para ese periodo";

        // Para condiciones de pago
        public const String PAY_COND_INSERTED = "La condición de pago se creó exitosamente";
        public const String PAY_COND_DELETED = "La condición de pago se eliminó exitosamente";

        // Configuracion de cuentas
        public const String NO_SELECTED_SPECIAL_ACCOUNT_TYPE = "Debe seleccionar un tipo de cuenta para ser consultado.";
        public const String NO_SELECTED_SPECIAL_ACCOUNT = "Debe seleccionar una cuenta para ser eliminada.";
        public const String NO_SELECTED_NOT_SPECIAL_ACCOUNT = "Debe seleccionar una cuenta para ser asginada.";
        public const String SPECIAL_ACCOUNT_INSERTED = "Cuenta especial asignada exitósamente.";
        public const String SPECIAL_ACCOUNT_DELETED = "Cuenta especial eliminada exitósamente.";

        //Consultar documentos abiertos
        public const String NO_SELECTED_AUX_ACCOUNT = "Debe seleccionar un cliente o proveedor para ser consultado.";

        //Creacion de bodegas
        public const String NO_SELECTED_STORAGE = "Debe seleccionar una bodega para ser editada.";
        public const String CODE_UPDATED_EXISTS = "El código de la bodega ha sido modificado y el nuevo código ya existe en la lista de bodegas, cámbielo y reintente.";
        public const String NEW_CODE_EXIST = "El código de bodega proporcionado ya existe, cambie el código y reintente.";
        public const String STORE_INSERTED = "Bodega insertada exitosamente.";
        public const String STORE_UPDATED = "Bodega actualizada exitosamente.";
        public const String STORE_DELETED = "Bodega eliminada exitosamente.";

        //Creación-Edición de compañías
        public const String COMPANY_INFORMATION_MISSING = "Debe llenar toda la información de la compañía.";
        public const String VERIFICATION_PASSWORD_FAILED = "La contraseña y la contraseña de verificación no coinciden.";
        public const String COMPANY_EDITED = "Infomación de la compañía editada exitosamente.";

        // Cierre contable
        public const String ACCOUNTING_CLOSE_SUCCESS = "Cierre contable realizado exitosamente.";
        public const String INCOME_STATEMENT_ENTRIES_SUCCESS = "Registro de dividendos e impuesto de renta realizado exitosamente.";

        // Módulo de bancos
        public const String NO_BANKING_ACCOUNT_SELECTED = "Debe seleccionar una cuenta bancaria contra que cancelar las facturas.";
        public const String NO_CLIENT_PROVIDER_SELECTED = "Debe seleccionar al menos una factura que cancelar.";
        public const String BILL_CANCELED = "Facturas canceladas exitosamente.";
        
        // Creación/Edición/Borrado Articulos
        public const String NO_SELECTED_STORAGE_C = "Debe seleccionar una bodega para ser editada";
        public const String NO_SELECTED_ITEM = "Debe seleccionar consultar una bodega y seleccionar un articulo para ser editado";
        public const String ITEM_INSERTED = "Articulo insertado exitosamente";
        public const String ITEM_UPDATED = "Articulo actualizado exitosamente";
        public const String ITEM_DELETE = "Articulo borrado exitosamente";
        public const String ITEM_IMAGE_FAILED = "No exiten imagenes asociadas al articulo";
        public const String ADD_ITEM_IMAGE_SUCCESS = "La imagen se insertó exitosamente";
        public const String ADD_ITEM_IMAGE_FAILED = "La imagen no pudo ser insertada";


        // Operaciones sobre inventario
        public const String INVENTORY_OP_SUCCESS = "La operación de inventarios se realizó exitosamente.";

        // Operaciones sobre compras y ventas
        public const String AT_LEAST_1_ITEM = "El documento debe tener al menos un artículo.";
        public const String DOCUMENT_INSERTION_SUCESS = "Documento registrado exitosamente.";

        // Tipos de impuesto
        public const String NO_TAX_TO_DELETE = "No hay ningún impuesto que eliminar.";
        public const String TAX_DELETE = "Impuesto eliminado exitosamente.";
        public const String TAX_INSERTED = "Impuesto agregado exitosamente.";
        public const String TAX_DELETE_FAILED = "No se pudo eliminar el impuesto, hay documentos asociados a él.";

        // Condiciones de pago
        public const String NO_COND_TO_DELETE = "No hay ninguna condición de pago que eliminar"; 


        // Carga de facturas externas
        public const String CHECK_OPERATION_FINISHED = "La operación ha sido concluida, por favor revisar el archivo de resultados para más información";
        public const String CHECK_OPERATION_FAILED = "Error al cargar el archivo de facturas";

    }
}
